/**
 * @Description: 泛型方法
 * @Author Stark
 * @Date 2022/3/27 17:39
 **/
public class MyClass<T,E> {
//    private T valeu1;
//    private T valeu2;
//
//    private  T x;
//
//    //这两个方法都不是泛型方法
//    public T getX() {
//        return x;
//    }
//    public  void setX(T x){
//        this.x = x;
//    }

    private T valeu1;
    private E valeu2;

    //泛型方法
    //T类型参数是方法自己的，E是类中的
    //T的类型可以随便设置，E必须和类中的声明保持一致
    public <T> void test(T t,E e){
        System.out.println(t);
    }

    public <S> S test(S s){
        System.out.println(s);
        return s;
    }

    public static void main(String[] args) {
        //创建这个泛型类的时候明确类型为整型
        MyClass<Integer,String> myClass = new MyClass<>();
        //此时T是Integer，E必须是String
        myClass.test(11,"11.1");
        //此时T是Double
        //myClass.test(11.1,11.1);//报错

    }
}
